package com.ruoyi.index.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.info.domain.FhInfoUser;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 发布评论对象 fh_index_postcomments
 * 
 * @author ruoyi
 * @date 2024-11-11
 */
@ApiModel(value = "FhIndexPostcomments",description = "评论实体")
public class FhIndexPostcomments extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    @ApiModelProperty("回复的用户信息")
    private FhInfoUser replyUser;

    @ApiModelProperty("用户信息")
    private FhInfoUser fhInfoUser;

    @ApiModelProperty("是否点赞")
    private Boolean isLike;

    @ApiModelProperty("子评论数量")
    private Long childCount;

    @ApiModelProperty("回复的评论id")
    private Long replyCommentId;

    @ApiModelProperty("回复的用户id")
    private Long replyUserId;

    @ApiModelProperty("回复的用户姓名")
    private String replyUserName;

    @ApiModelProperty("点赞数")
    private Long likeNum;


    /** 主键 */
    private Long id;

    /** 一级评论id */
    @ApiModelProperty("一级评论id")
    @Excel(name = "一级评论id")
    private Long parentId;


    /** 用户id */
    @ApiModelProperty("发布信息用户id")
    @Excel(name = "用户id")
    private Long userId;


    /** 发布信息id */
    @ApiModelProperty("发布信息id")
    @Excel(name = "发布信息id")
    private Long postinfoId;

    /** 评论人id */
    @Excel(name = "评论人id")
    private Long commentId;

    /** 评论人姓名 */
    @ApiModelProperty("评论人用户姓名")
    @Excel(name = "评论人姓名")
    private String commentName;

    /** 评论文本 */
    @ApiModelProperty("评论内容")
    @Excel(name = "评论文本")
    private String commentText;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date crateTime;

    public FhInfoUser getReplyUser() {
        return replyUser;
    }

    public void setReplyUser(FhInfoUser replyUser) {
        this.replyUser = replyUser;
    }

    public Boolean getLike() {
        return isLike;
    }

    public void setLike(Boolean like) {
        isLike = like;
    }

    public Long getLikeNum() {
        return likeNum;
    }

    public void setLikeNum(Long likeNum) {
        this.likeNum = likeNum;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setParentId(Long parentId)
    {
        this.parentId = parentId;
    }

    public Long getParentId()
    {
        return parentId;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setPostinfoId(Long postinfoId) 
    {
        this.postinfoId = postinfoId;
    }

    public Long getPostinfoId() 
    {
        return postinfoId;
    }
    public void setCommentId(Long commentId) 
    {
        this.commentId = commentId;
    }

    public Long getCommentId() 
    {
        return commentId;
    }
    public void setCommentName(String commentName) 
    {
        this.commentName = commentName;
    }

    public String getCommentName() 
    {
        return commentName;
    }
    public void setCommentText(String commentText) 
    {
        this.commentText = commentText;
    }

    public String getCommentText() 
    {
        return commentText;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setCrateTime(Date crateTime) 
    {
        this.crateTime = crateTime;
    }

    public Date getCrateTime() 
    {
        return crateTime;
    }

    public FhInfoUser getFhInfoUser() {
        return fhInfoUser;
    }

    public void setFhInfoUser(FhInfoUser fhInfoUser) {
        this.fhInfoUser = fhInfoUser;
    }

    public Boolean getIsLike() {
        return isLike;
    }

    public void setIsLike(Boolean like) {
        isLike = like;
    }

    public Long getChildCount() {
        return childCount;
    }

    public void setChildCount(Long childCount) {
        this.childCount = childCount;
    }

    public Long getReplyCommentId() {
        return replyCommentId;
    }

    public void setReplyCommentId(Long replyCommentId) {
        this.replyCommentId = replyCommentId;
    }

    public Long getReplyUserId() {
        return replyUserId;
    }

    public void setReplyUserId(Long replyUserId) {
        this.replyUserId = replyUserId;
    }

    public String getReplyUserName() {
        return replyUserName;
    }

    public void setReplyUserName(String replyUserName) {
        this.replyUserName = replyUserName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("parentId", getParentId())
            .append("userId", getUserId())
            .append("postinfoId", getPostinfoId())
            .append("commentId", getCommentId())
            .append("commentName", getCommentName())
            .append("commentText", getCommentText())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("crateTime", getCrateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
